#include <iostream>
using namespace std;
#include <string>

class animal
{
public:
    animal(){}
    ~ animal(){}
    void setname(const string &name){
        this->name=name;
    }

    string getname(){
        return this->name;
    }
    int height;    

protected:
    string name;
private:
    int age;
};

class cat : private animal
{
public:
    cat(){}
    ~cat(){}
    /*int setage(int age){
        this->age=age;
    }*/
    void setnamel(const string &name){
        this->name=name;
    }

    string getnamel(){
        return this->name;
    } 
    void setheight(int h){
        this->height=h;
    }
    int getheight(){
        return this->height;
    }

};

class whitecat : public cat
{
public:
    whitecat(){}
    ~whitecat(){}

    void setheight(int h){
        this->height=h;
    }
    int getheight(){
        return this->height;
    }
    void setnamel(const string &name){
        this->name=name;
    }

    string getnamel(){
        return this->name;
    } 


};


int main()
{
    cat an;
    //an.name;
    an.setnamel("hi");
    cout<<an.getnamel()<<endl;
    //whitecat caa;
    //caa.setnamel("hello");
    //cout<<caa.getnamel()<<endl;  
    /*
    an.setheight(10);
    cout<<an.getheight()<<endl;
    whitecat caa;
    caa.setheight(15);
    cout<<caa.getheight()<<endl;  
    */


}